interface X{
	q:string,
	w:string
}
interface Y{
	q:boolean,
	r:string,
}
type XY = X&Y
let aa:never   //为never类型 联合多个类型时当属性冲突时进行则为never类型


// 第二个例子
interface G {
    inner: D;
}
interface R {
    inner: E;
}
interface C {
    inner: F;
}

interface D {
    d: boolean;
}
interface E {
    e: string;
}
interface F {
    f: number;
}

type ABC = G & R & C;
let abc: ABC = {
    inner: {
        d: false,
        e: 'className',
        f: 5
    }
};
